A battery charging system transfers energy into a battery module or a string of modules. The charging protocol utilized by the charging system generally depends on the size and type of the battery being charged. For instance, some battery types have high tolerance for overcharging and can be recharged via connection to a constant voltage source or a constant current source. Chargers of this type may require manual disconnection at the end of the charge cycle, or may have a timer to cut off charging current at a fixed time. Other battery types cannot withstand long, high-rate overcharging without causing damage to the battery. In such cases, the battery charging system may utilize voltage sensing circuits and a microprocessor controller to adjust the charging current, determine the state of charge, and provide cut-off at the end of charge, for example.